全网最细:使用宝塔面板搭建 Hexo 博客并安装安知鱼主题(一)

Hexo 是一个快速、简洁且高效的博客框架,通常我们习惯在本地电脑写好文章生成静态文件后部署到 Github Pages。但如果你拥有一台 VPS 云服务器,配合宝塔面板,你可以拥有更快的国内访问速度、自定义的域名以及更灵活的后端管理。

本文将手把手教你在宝塔面板环境下,从零搭建并运行 Hexo。

前置准备

  1. 一台已经安装好 CentOSUbuntu 的云服务器。
  2. 服务器已安装 宝塔面板 (Bt-Panel)
  3. 一个解析到服务器 IP 的域名(可选,建议有)。

第一步:安装 Node.js 环境

Hexo 是基于 Node.js 的,所以第一步必须配置 Node 环境。宝塔面板自带的软件商店让这一步变得非常简单。

  1. 登录宝塔面板。
  2. 点击左侧菜单的 【软件商店】
  3. 在搜索框输入 Node
  4. 找到 Node.js版本管理器,点击安装。

宝塔面板搭建 Hexo 博客(1)

安装完成后,点击设置,选择一个稳定版本(建议选择 v16v18 的 LTS 版本),点击 【安装】
关键步骤: 安装完成后,务必点击版本列表右侧的 【命令行版本】,将其选中。否则后续在终端无法使用 npm 命令。

宝塔面板搭建 Hexo 博客(2)


第二步:安装 Hexo CLI

环境配置好后,我们需要通过命令行安装 Hexo 的核心程序。

  1. 点击宝塔面板左侧的 【终端】,输入服务器密码登录。
  2. 输入以下命令检查 Node 是否安装成功:
1
2
node -v
npm -v
  1. 如果显示版本号,则执行以下命令全局安装 Hexo:
1
npm install hexo-cli -g

第三步:初始化 Hexo 博客目录

接下来我们需要找个地方存放博客文件。通常建议放在 /www/wwwroot 目录下。

  1. 在终端中进入目录:
1
cd /www/wwwroot
  1. 初始化博客(假设博客文件夹名为 myblog):
1
hexo init myblog
  1. 进入博客目录并安装依赖:
1
2
cd myblog
npm install

宝塔面板搭建 Hexo 博客(3)


第四步:配置 Nginx 反向代理(绑定域名)

Hexo 默认运行在 4000 端口,我们肯定不希望用户通过 http://域名:4000 访问,而是通过标准的 http://域名 (80端口) 访问。这时候需要 Nginx 出场。

  1. 点击宝塔左侧 【网站】 -> 【PHP项目】
  2. 输入你的域名(如果没有域名,暂时输入服务器公网IP),PHP版本选择“纯静态”。
  3. 根目录选择刚刚创建的目录,如:myblog
  4. 站点创建成功后,点击右侧的 【设置】
  5. 选择 【网站目录】,设置运行目录为 /public,并关闭 【防跨站攻击】

宝塔面板搭建 Hexo 博客(5)


第五步:放行端口与最终测试

虽然我们做了反向代理,但为了保险起见,或者你需要远程调试,建议在宝塔的安全设置中检查一下。

  1. 点击左侧 【安全】
  2. 确保 80 端口(HTTP)和 443 端口(HTTPS)是放行状态。
  3. (可选) 如果你想直接通过 IP:4000 访问,需要放行 4000 端口。

现在,打开浏览器,输入你的域名(或IP),你应该能看到 Hexo 默认的 “Hello World” 页面了!

宝塔面板搭建 Hexo 博客(4)


总结

通过宝塔面板,我们将复杂的命令行操作可视化了,利用 PM2 保证了服务的稳定性,利用 Nginx 实现了域名的无缝访问。

下一步做什么?
你现在可以在 /www/wwwroot/myblog/source/_posts 下创建 Markdown 文件来写文章,或者在本地写好后通过 FTP/Git 上传到服务器。

Enjoy your blogging!